package com.rgp.servicemap.constant;

/**
 * @author nhp
 * @version 1.0
 * @description TODO
 * @date 2024-04-15 1:01
 */
public class DefaultRoutePlanRequestParamConstant {

    public static final String KEY = "key";
    public static final String ORIGIN = "origin";
    public static final String DESTINATION = "destination";
    public static final String ORIGINID = "originid";
    public static final String DESTINATIONID = "destinationid";
    public static final String ORIGINTYPE = "origintype";
    public static final String DESTINATIONTYPE = "destinationtype";
    public static final String STRATEGY = "strategy";
    public static final String WAYPOINTS = "waypoints";
    public static final String AVOIDPOLYGONS = "avoidpolygons";
    public static final String AVOIDROAD = "avoidroad";
    public static final String PROVINCE = "province";
    public static final String NUMBER = "number";
    public static final String CARTYPE = "cartype";
    public static final String FERRY = "ferry";
    public static final String ROADAGGREGATION = "roadaggregation ";
    public static final String NOSTEPS = "nosteps";
    public static final String SIG = "sig";
    public static final String OUTPUT = "output";
    public static final String CALLBACK = "callback";
    public static final String EXTENTIONS = "extensions";

    public class ExtentionConstant{
        public static final String ALL = "all";
        public static final String BASE = "base";
    }

    public class OutputConstant{
        public static final String XML = "xml";
        public static final String JSON = "json";
    }

    public class NavigationStrategy {
        //速度优先
        public static final String SPEED_PRIORITY = "0";
        //费用优先
        public static final String COST_PRIORITY = "1";
        //费用优先
        public static final String DISTANCE_PRIORITY = "2";
        //速度优先，且不走快速路
        public static final String SPEED_PRIORITY_AND_NOT_TAKE_FAST_ROAD = "3";
        //躲避拥堵
        public static final String AVOID_CONGESTION = "4";
        //多策略[速度优先、费用优先、费用优先]
        public static final String MULTISTARTEGY = "5";
        //速度优先，不走高速，但是不排除走其余收费路段
        public static final String SPEED_PRIORITY_AND_AVOID_EXPRESSWAY = "6";
        //费用优先，不走高速且避免所有收费路段
        public static final String COST_PRIORITY_AND_AVOID_EXPRESSWAY = "7";
        //躲避拥堵和收费，可能存在走高速的情况，并且考虑路况不走拥堵路线，但有可能存在绕路和时间较长
        public static final String AVOID_CONGESTION_AND_TOOLS = "8";
        //躲避拥堵和收费，不走高速
        public static final String AVOID_CONGESTION_AND_TOOLS_AND_EXPRESSWAY = "9";
    }
}